package com.ruoyi.project.business.punch.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.framework.aspectj.lang.annotation.Excel;
import com.ruoyi.framework.web.model.BaseEntity;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.time.LocalTime;

/**
 * 打卡对象 schedule_clock_punch
 *
 * @author thanks
 * @date 2024-02-05
 */
@Data
public class ScheduleClockPunch extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * $column.columnComment
     */
    private Long id;

    /**
     * 用户ID
     */
    @Excel(name = "用户ID")
    private Long userId;

    /**
     * 考勤月
     */
    private Integer month;

    /**
     * 考勤年
     */
    private Integer year;

    /**
     * 打卡时间
     */
    @JsonFormat(pattern = "HH:mm:ss")
    @DateTimeFormat(pattern = "HH:mm:ss")
    @Excel(name = "打卡时间", dateFormat = "HH:mm:ss")
    private LocalTime clockTimeStart;


    @JsonFormat(pattern = "HH:mm:ss")
    @DateTimeFormat(pattern = "HH:mm:ss")
    private LocalTime clockTimeEnd;

    /**
     * 每天打卡的顺序 1， 2， 3， 4
     */
    @Excel(name = "打卡顺序")
    private Integer punchSort;

    /**
     * day of month
     */
    @Excel(name = "day of month")
    private Integer dayOfMonth;

    /**
     * day of week
     */
    @Excel(name = "day of week")
    private Integer dayOfWeek;

    /**
     * 是否删除 0:否 1:是
     */
    @Excel(name = "是否删除 0:否 1:是")
    private Boolean deleted;

    /**
     * 事件操作人id
     */
    @Excel(name = "事件操作人id")
    private Long creator;

    /**
     * 事件更新人id
     */
    @Excel(name = "事件更新人id")
    private Long updater;

    /**
     * 租户id
     */
    @Excel(name = "租户id")
    private Long tenantId;

}
